package com.intco.ait.quotation.api.common.model.request;

import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;

import java.io.Serializable;

/**
 * 框条/物料查询查询映射类
 *
 * @author zhang yong
 * @version 1.0.1
 * @date 2024-04-07 11:18
 */
@Data
@Accessors(chain = true)
@EqualsAndHashCode(callSuper = false)
//@Schema(description = "物料查询查询VO")
public class MaterialSearchVo implements Serializable {
    //@Schema(description = "当前页码 数据类型整形 默认1", defaultValue = "1", requiredMode = Schema.RequiredMode.REQUIRED)
    private long current = 1;
    //@Schema(description = "每页条数 数据类型整形 默认20", defaultValue = "20", requiredMode = Schema.RequiredMode.REQUIRED)
    private long size = 20;
    //@Schema(description = "每页最大条数 数据类型整形 默认50", hidden = true)
    private long maxSize = 50;
    //@Schema(description = "公司,可选值为[ SD, SH ]，默认SD，SD-山东，SH-上海")
    //private MouldingStyleCompanyEnum company = MouldingStyleCompanyEnum.SD;
    //@Schema(description = "框条 数据类型字符串 最大长度20 查询框条时需要")
    private String mouldingStyleCode = "";
    //@Schema(description = "物料编码 最大长度20 查询物料时需要")
    private String materialCode = "";
    //@Schema(description = "是否只查自己添加的数据(是:1,否:0 不传默认为0) 添加页面下面物料列表展示需要")
    private String selfData;
    //@Schema(description = "建材类型 区分建材成品or建材板条")
    private String buildingType = "CP";
    //@Schema(hidden = true, description = "根据当前人主键获取数据")
    private String creator;
    //@Schema(description = "业务类型 finished:成品,frame:框条,building:建材,pellet:粒子原料,other:其他", defaultValue = "finished", requiredMode = Schema.RequiredMode.REQUIRED)
    private String productBusiness = "building";
    //@Schema(description = "录入开始时间 格式yyyy-mm-dd 查询物料时需要")
    private String startTime;
    //@Schema(description = "录入结束时间 格式yyyy-mm-dd 查询物料时需要")
    private String endTime;
    //@Schema(description = "是否外购")
    private Integer outsource;
}
